package routers

import (
	"blog_api/controllers"
	"blog_api/middleware"
	"github.com/gin-gonic/gin"
)

/**
 * ApiInit
 * Author: Jazk-Z
 * @Description: 接口路由组
 * @param r
 */
func ApiInit(r *gin.Engine) {
	r.Any("/login", controllers.AdminController{}.AdminUserLogin) // 后台登录接口

	// 后台接口路由组
	aApi := r.Group("/admin", middleware.AdminMiddleware)
	{
		aApi.GET("/panel", controllers.AdminController{}.AdminDataPanel)          // 后台首页数据面板
		aApi.GET("/ptree", controllers.PowerController{}.PowerList)               // 后台左侧菜单栏
		aApi.GET("/logout", controllers.AdminController{}.AdminLogout)            // 后台退出登录
		aApi.GET("/article", controllers.ArticleController{}.AdminArticleList)    // 管理后台——文章列表
		aApi.GET("/label", controllers.LabelController{}.AdminLabelList)          // 管理后台——标签列表
		aApi.GET("/label/switch", controllers.LabelController{}.AdminLabelSwitch) // 管理后台——修改字段值
		aApi.GET("/label/save", controllers.LabelController{}.AdminLabelSave)     // 管理后台——添加/编辑
		aApi.GET("/category", controllers.CategoryController{}.AdminCategoryList) // 管理后台——分类栏目列表
		aApi.GET("/set", controllers.SetController{}.AdminSetList)                // 管理后台——系统设置列表
		aApi.GET("/pwd_edit", controllers.AdminController{}.AdminLoginPwdEdit)    // 管理后台——用户密码重置
		aApi.GET("/pvc", controllers.PrVisitController{}.AdminPrVisitList)        // 管理后台——简历访问连接列表
		aApi.GET("/pvl", controllers.PageVisitLogController{}.AdminPvlList)       // 管理后台——页面访问日志

	}

	// 前端接口路由组
	Api := r.Group("/i")
	{
		Api.GET("/catree", controllers.CategoryController{}.IndexCatTree)           // 首页栏目分类树
		Api.GET("/labels", controllers.LabelController{}.IndexLabel)                // 首页标签
		Api.GET("/hotart", controllers.ArticleController{}.IndexHotArticleList)     // 首推荐文章列表
		Api.GET("/art_list", controllers.ArticleController{}.IndexArticleListByCat) // 首页文章列表
		Api.GET("/breadcrumb", controllers.CategoryController{}.IndexCatBreadcrumb) // 首页面包屑
		Api.GET("/art_click", controllers.ArticleController{}.IndexArticleClick)    // 点击文章去详情页
		Api.GET("/art_detail", controllers.ArticleController{}.IndexArticleDetail)  // 通过id获取文章详情

	}

}
